package gervosou;

import java.io.Serializable;
import java.util.HashMap;
import java.util.HashSet;

public class Societe 
	implements Serializable {
		
	/**
	 * 
	 */
	private String nom;
	private String adresse;
	private String nomPDG;
	private String prenomPDG;
	private String adresseMail;
	private HashSet<CompteSociete> _comptesSociete;
	private HashSet<Mandataire> _mandatairesSociete;
	
	public Societe(String nom, String a, String np, String pp, String mail) {
		this.setNom(nom);
		this.setAdresse(a);
		this.setNomPDG(np);
		this.setPrenomPDG(pp);
		this.setComptes(new HashSet<CompteSociete>());
		this.setMandataires(new HashSet<Mandataire>());
	}

	public void setAdresse(String a)
	{adresse = a;}
	
	public void setNom(String t)
	{nom = t;}
	
	public void setNomPDG(String np)
	{nomPDG = np;}
	
	public void setPrenomPDG(String pp)
	{prenomPDG = pp;}
	
	public void setMail(String mail)
	{adresseMail = mail;}
	
	private void setComptes(HashSet<CompteSociete> comptes) {
		_comptesSociete = comptes;
	}// Fin setComptes
	
	public void lierCompte(CompteSociete cs) {
		this.setCompte(cs);
		cs.setSociete(this);
	}
	
	private void setCompte(CompteSociete cs){
		_comptesSociete.add(cs);
	}

	private void setMandataires(HashSet<Mandataire> mandataires){
		_mandatairesSociete = mandataires;
	}
	
	private void lierMandataire(Mandataire m){
		this._mandatairesSociete.add(m);
		m.setSociete(this);
	}
	
	public String getNom() {
		return nom;
	}

	public String getAdresse(){
		return adresse;
	}
	
	public String getNomPDG(){
		return nomPDG;
	}
	
	public String getPrenomPDG(){
		return prenomPDG;
	}
	
	public String getMail(){
		return adresseMail;
	}
	
	public HashSet<CompteSociete> getComptes(){
		return _comptesSociete;
	}
	
	public int getNbComptes(){
		return _comptesSociete.size();
	}
}
